package m3f.interact;

import java.io.IOException;

public class Main {
	
	public static void main(String[] args) throws IOException{
		if (args.length < 1) {
			System.out.println("Options: \n" +
					"\trank:          Make retrieval rankings\n" +
					"\tfactors        Compute multimodal joint factorization\n" +
					"\tbp             Calculate backprojection\n" +
					"\trankbp         Make backprojection and ranking\n" +
					"\ttransformFile  Transform a matrix file to binary format\n" +
					"\tonse           Compute de Online Non-negative Factorization\n" +
					"\tcombine        Combine image features\n" +
					"\trankcase       Make retrieval rankings for case-base\n");
			System.exit(0);
		}
		if (args[0].equals("rank")) {	
			Ranking.run(args);
		} else if (args[0].equals("factors")) {
			Factorization.factors(args);
		} else if (args[0].equals("bp")) {
			Backprojection.run(args);
		} else if (args[0].equals("rankbp")) {
			RankingBackprojection.run(args);
		}else if (args[0].equals("transformFile")){
			FileIndexing.transform(args);
		}else if (args[0].equals("onse")){
			ONSE.factors(args);
		}else if (args[0].equals("combine")){
			CombineImagesByCase.run(args);
		}else if (args[0].equals("rankcase")){
			RankingCaseBase.run(args);
		}
	}
	
}
